// 定义一个特质 Logger，该特质包含一个具体方法 log(message: String): Unit。该方法将消息记录到日志中。
// 定义一个类 Calculator，它扩展 Logger 特质。 Calculator 类具有两个具体方法 add(x: Int, y: Int): Int 和 subtract(x: Int, y: Int): Int，它们分别返回 x 和 y 的和或差。
// 在 add 和 subtract 方法内部，分别使用 log 方法记录所执行的操作和结果。


trait Logger{
    def log(message: String): Unit = {
        println(s"Logging message:$message")
    }
}


class Calculator extends Logger{
    def add(x: Int,y: Int): Int = {
        val result: Int = x+y
        log(s"Performing addition operation. Result:$result")
        result
    }

    def subtract(x: Int, y: Int): Int = {
        val result: Int = x-y
        log(s"Performing subtraction operation. Result:$result")
        result
    }
}

// val calculator = new Calculator()
// calculator.add(5, 3)
// calculator.subtract(5, 3)